//generator解决回调地狱深渊问题
import { ajax } from './ajax'
let getData = function (url) {
    ajax(url, res => {
        genData.next(res)
    })
}
function* gData() {
    let res1 = yield getData('../static/a.json')
    console.log(res1)
    let res2 = yield getData('../static/b.json')
    console.log(res2)
}

let genData = gData()
genData.next()

//分析：第一次执行genData.next（）时候，执行ajax函数，然后第二次执行genData.next()
//第二次携带的参数是第一次执行ajax的成功的值，会传递给第一次执行yield的结果
//第三次携带的参数是第二次执行ajax的成功的值，会传递给第二次执行yield的结果
//第四次携带的参数是第三次执行ajax的成功的值，会传递给第三次执行yield的结果